package org.hcyspartnoc.luoxin.service.system;

import com.baomidou.mybatisplus.extension.service.IService;
import org.hcyspartnoc.luoxin.common.core.PageBean;
import org.hcyspartnoc.luoxin.common.exception.system.SysPermissionException;
import org.hcyspartnoc.luoxin.common.exception.system.SysRoleException;
import org.hcyspartnoc.luoxin.pojo.dto.system.SysPermissionBindingRoleDto;
import org.hcyspartnoc.luoxin.pojo.po.system.SysPermissionPo;
import org.hcyspartnoc.luoxin.pojo.vo.system.SysPermissionVo;

public interface ISysPermissionService extends IService<SysPermissionPo> {
    PageBean<SysPermissionPo, SysPermissionVo> queryByPage(Integer currentPage, Integer pageSize, String authCode, Integer status, Integer roleId);

    void bindingRole(SysPermissionBindingRoleDto sysPermissionBindingRoleDto) throws SysRoleException, SysPermissionException;

    void unbindingRole(SysPermissionBindingRoleDto sysPermissionBindingRoleDto) throws SysPermissionException;

    void modifyStatus(Integer permissionId) throws SysPermissionException;
}
